package com.ruoyi.newsInfo.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 动态资讯对象 wdmh_news
 * 
 * @author ruoyi
 * @date 2025-09-15
 */
public class NewsInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 动态资讯ID（主键） */
    private Long newsId;

    /** 商家ID（外键） */
    @Excel(name = "商家ID", readConverterExp = "外=键")
    private Long merchantId;

    /** 标题 */
    @Excel(name = "标题")
    private String title;

    /** 内容（富文本/HTML） */
    @Excel(name = "内容", readConverterExp = "富=文本/HTML")
    private String content;

    /** 封面图片地址（可选） */
    @Excel(name = "封面图片地址", readConverterExp = "可=选")
    private String coverImage;

    /** 资讯类型：1=活动 2=节日 3=公告 */
    @Excel(name = "资讯类型：1=活动 2=节日 3=公告")
    private String newsType;

    /** 发布时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发布时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date publishTime;

    /** 结束时间（过期自动下架） */
    @Excel(name = "结束时间", readConverterExp = "过=期自动下架")
    private Date expireTime;

    /** 是否置顶：0=否 1=是 */
    @Excel(name = "是否置顶：0=否 1=是")
    private String isTop;

    /** 发布状态：0=草稿 1=已发布 */
    @Excel(name = "发布状态：0=草稿 1=已发布")
    private String isPublished;

    /** 是否启用：0=禁用 1=启用 */
    @Excel(name = "是否启用：0=禁用 1=启用")
    private String isEnabled;

    /** 状态（0=正常, 1=禁用） */
    @Excel(name = "状态", readConverterExp = "0==正常,,1==禁用")
    private String status;

    /** 删除标志（0=未删除, 1=删除） */
    private String delFlag;

    public void setNewsId(Long newsId) 
    {
        this.newsId = newsId;
    }

    public Long getNewsId() 
    {
        return newsId;
    }

    public void setMerchantId(Long merchantId) 
    {
        this.merchantId = merchantId;
    }

    public Long getMerchantId() 
    {
        return merchantId;
    }

    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }

    public void setContent(String content) 
    {
        this.content = content;
    }

    public String getContent() 
    {
        return content;
    }

    public void setCoverImage(String coverImage) 
    {
        this.coverImage = coverImage;
    }

    public String getCoverImage() 
    {
        return coverImage;
    }

    public void setNewsType(String newsType) 
    {
        this.newsType = newsType;
    }

    public String getNewsType() 
    {
        return newsType;
    }

    public void setPublishTime(Date publishTime) 
    {
        this.publishTime = publishTime;
    }

    public Date getPublishTime() 
    {
        return publishTime;
    }

    public void setExpireTime(Date expireTime) 
    {
        this.expireTime = expireTime;
    }

    public Date getExpireTime() 
    {
        return expireTime;
    }

    public void setIsTop(String isTop) 
    {
        this.isTop = isTop;
    }

    public String getIsTop() 
    {
        return isTop;
    }

    public void setIsPublished(String isPublished) 
    {
        this.isPublished = isPublished;
    }

    public String getIsPublished() 
    {
        return isPublished;
    }

    public void setIsEnabled(String isEnabled) 
    {
        this.isEnabled = isEnabled;
    }

    public String getIsEnabled() 
    {
        return isEnabled;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("newsId", getNewsId())
            .append("merchantId", getMerchantId())
            .append("title", getTitle())
            .append("content", getContent())
            .append("coverImage", getCoverImage())
            .append("newsType", getNewsType())
            .append("publishTime", getPublishTime())
            .append("expireTime", getExpireTime())
            .append("isTop", getIsTop())
            .append("isPublished", getIsPublished())
            .append("isEnabled", getIsEnabled())
            .append("status", getStatus())
            .append("delFlag", getDelFlag())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("createBy", getCreateBy())
            .append("updateBy", getUpdateBy())
            .append("remark", getRemark())
            .toString();
    }
}
